Simulated user interface in mixed reality for haptic effect management

ABSTRACT

Embodiments disclosed herein include a method for managing haptic effects. The method generates a first graphical representation of a first haptic effect generation pattern in a mixed reality environment, wherein the first haptic effect generation pattern comprises factors for generating a first haptic effect at a first haptic device. The method receives a user alteration to the first haptic effect generation pattern from a first user. The method changes the graphical representation based on the user alteration.

BACKGROUND OF THE INVENTION

The present invention relates generally to the field of haptic feedback,and more particularly to customizing haptic feedback using a mixedreality interface.

Haptic effects are mechanical conditions created by a device to notify auser that is in contact with the device. Haptic effects may includefeedback technologies such as force, vibrotactile, electrotactile,ultrasound and thermal conditions. These technologies can be used tocreate virtual objects in a computer simulation, to control virtualobjects, and to enhance remote control of machines and devices(telerobotics). Haptic devices may incorporate tactile sensors thatmeasure forces exerted by the user on the interface. The haptic effectcan be generated by a smartwatch, mobile device, head mounted device,display surface of machine, vehicle, etc.

Mixed Reality is a blend of the physical world with digital additionsoverlaid in a mixed reality display. The mixed reality environmentunlocks natural and intuitive 3D human, computer, and environmentinteractions. Mixed reality takes advantage of advancements in computervision, graphical processing, display technologies, input systems, andcloud computing. Since the term was first introduced in the mid-1990s,the application of mixed reality has gone beyond displays to include:environmental understanding, including spatial mapping and anchors;human understanding; spatial sound; locations and positioning in bothphysical and virtual spaces; and collaboration on 3D assets in mixedreality spaces.

SUMMARY

Aspects of an embodiment of the present invention disclose a method,computer program product, and computing system for managing hapticeffects. The embodiments include generating a first graphicalrepresentation of a first haptic effect generation pattern in a mixedreality environment, receiving a user alteration to the first hapticeffect generation pattern from a first user, and changing the graphicalrepresentation based on the user alteration.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts a schematic block diagram of a haptic managing system inaccordance with one embodiment of the present invention.

FIG. 2 depicts a flowchart of the steps of a haptic managing programexecuting within the haptic managing system of FIG. 1 , for managinghaptic effects in a mixed reality environment, in accordance with oneembodiment of the present invention.

FIG. 3 depicts a schematic representation of a mixed reality environmentmanaged by a mixed reality simulator, in accordance with one embodimentof the present invention.

FIG. 4 depicts a block diagram of components of a computing devicerepresenting a mixed reality simulator, haptic devices, or hapticlocation marker devices, in accordance with one embodiment of thepresent invention.

DETAILED DESCRIPTION

Providing a notification to a user can be very specific to the user andthe specific device being used by the user. Further, problems can arisewhen there are different user preferences, different devices, anddifferent events that require a notification. It can be difficult toabstract the various notifications for delivery and output. Evenfurther, there can be situations where an audio notification or a visualnotification is not useful to the user.

Embodiments disclosed herein recognize that a haptic effect can be aneffective way to notify users. For certain situations and conditions,users might have preferences on how the haptic effects are delivered.Specifically, a user may want to customize the haptic effect based onvarious scenarios. Embodiments disclosed herein, therefore, include amixed-reality-based user interface by which a system can simulatevarious contextual situations within a mixed reality environment, andaccordingly configure haptic effects that are initiated by participatinghaptic devices. With the mixed reality user interface, the duration ofhaptic, types of haptic, propagation distance and propagation path ofhaptic are selected, and accordingly the participating haptic devicesmay identify the haptic devices that can generate the desired hapticeffects.

Turning now to the drawings, FIG. 1 depicts a diagram of a hapticmanaging system 100 in accordance with one embodiment of the presentinvention. FIG. 1 provides only an illustration of one embodiment anddoes not imply any limitations with regard to the environments in whichdifferent embodiments may be implemented.

The haptic managing system 100 includes a mixed reality simulator 102, anetwork storage device 104 (e.g., server, database, filesystem), a mixedreality interface device 106, a haptic device 108, and a haptic anchordevice 110, which are communicatively coupled via a communicationnetwork 112. The communication network 112 may be a single machine, alocal area network (LAN), a wide area network (WAN) such as theInternet, any combination thereof, or any combination of connections andprotocols that will support communications between the mixed realitysimulator 102, the network storage device 104, the mixed realityinterface device 106, the haptic device 108, and the haptic anchordevice 110 in accordance with embodiments of the invention. Thecommunication network 110 may include wired, wireless, or fiber opticconnections. In certain embodiments, the mixed reality simulator 102,the network storage device 104, the mixed reality interface device 106,the haptic device 108, and the haptic anchor device 110 may communicatewithout requiring the communication network 110, instead communicatingvia one or more dedicated wire connections or other forms of wired andwireless electronic communication.

In various embodiments, the mixed reality simulator 102 is a computingdevice that can be a standalone device, a server, a laptop computer, atablet computer, a netbook computer, a personal computer (PC), or adesktop computer. In another embodiment, the mixed reality simulator 102represents a computing system utilizing clustered computers andcomponents to act as a single pool of seamless resources. In general,the mixed reality simulator 102 can be any computing device or acombination of devices with access to the communication network 110. Themixed reality simulator 102 may include internal and external hardwarecomponents, as depicted and described in further detail with respect toFIG. 4 .

The haptic managing system 100 operates to simulate the activities of auser 114 located within an activity surrounding 116, to graphicallygenerate haptic effect generation patterns within the mixed realityenvironment, and to initiate haptic effects under specified conditionsdetected within the mixed reality environment. While a single user 114is illustrated, the haptic managing system 100 may be used to simulatemany (e.g., dozens, hundreds) users 114 simultaneously through thecommunication network 112. The same goes for using multiple instances ofthe mixed reality interface device 106, the haptic device 108, and thehaptic anchor device 110.

The haptic managing system 100 uses a haptic managing program 118located on the mixed reality simulator 102 to show the user 114 a mixedreality environment through the mixed reality interface device 106. Themixed reality interface device 106 may include a headset, glasses, asmartphone, or other technologies that allow the user 114 to have afield of view that is filled by the mixed reality interface device 106.The mixed reality interface device 106 may also include a cameraexternal from the user 114 so that the user 114 may be shown theactivity surrounding 116 while using the mixed reality interface device106. Furthermore, the mrid 106 may include speakers such as headphonesor earphones to digitally add sound to the mixed reality environment.

The haptic managing system 100 utilizes the haptic device 108 to deliverhaptic effects that notify the user 114 when specific conditions aresatisfied within the mixed reality environment. The conditions arestored as a haptic effect generation pattern, which includes theinitiation conditions under which a haptic effect will be initiated, andthe form that the haptic effect takes when delivered to the user 114.

For example, the haptic effect generation pattern may include initiationconditions such as a location of haptic effect generation, a life cycleof the haptic effect (e.g., haptic effect only for one day, week,season, etc.), or a distance of propagation in the activity surrounding.The location of haptic effect generation may be stored as a specificdigital boundary within the mixed reality environment. When the user 114and the mrid 106 pass within the boundary, the mixed reality simulator102 may detect the location of the mrid 106 and initiate the hapticeffect at the haptic device 108. The location of haptic effectgeneration may also be tied to the haptic anchor device 110. In certainembodiments, the boundary is located relative to the haptic anchordevice 110, such that a when the haptic anchor device 110 and either thehaptic device 108 or the mrid 106 pass within the boundary surroundingthe haptic anchor device 110, the haptic effect is initiated by thehaptic managing program 118.

The haptic effect propagation path is the lifecycle of the desiredhaptic effect. For example, some haptic effects will be active only atcertain times of the day, or may change depending on various factorssuch as how many people or devices are present within the activitysurrounding 116. Furthermore, the haptic effect propagation pathincludes the timing out of the haptic effect. Specifically, the hapticeffect may be designed to terminate after a set number of days or weeks.

In addition to determining the conditions under which the haptic device108 will initiate a haptic effect, the haptic effect generation patternmay also include action factors determining the actions the hapticdevice 108 takes during the haptic effect. When the haptic managingprogram 118 initiates the haptic effect at the haptic device 108, thehaptic device 108 may vibrate, change temperature, push, or electricallystimulate the user 114, among other things. Furthermore, each of thesetypes of haptic feedback may include a customizable duration orperiodicity. In addition to single-haptic device feedback, the hapticeffect generation pattern may include a combination of multi-hapticdevices 108.

The haptic managing program 118 stores the initiation conditions and theaction factors of each haptic effect generation pattern in a hapticeffects corpus 120 on the network storage device 104. All haptic effectgeneration patterns are thus accessible to all the devices of the hapticmanaging system 100. The haptic managing program 118 may also employ acustomizable scheme for generating a graphical representation of thehaptic effect generation patterns within the mixed reality environment.That is, the haptic managing program 118 may graphically show theboundary with particular characteristics such as shape, color,intensity, saturation, opacity, and others, to represent the hapticeffect generation pattern. For example, a haptic effect with a forcefulvibration may be represented in the mixed reality environment with abright or vibrant graphic boundary while a small vibration may berepresented in the mixed reality environment with a dull or mutedgraphic boundary. Furthermore, haptic effects utilizing heat may berepresented by a red graphic, with cooling haptic effects represented bya blue graphic. Haptic effect generation patterns that involvecautionary warnings may include flashing in the mixed realityenvironment.

The haptic effect generation pattern may be customized by the user 114using the haptic managing program 118 within the mixed realityenvironment according to the method illustrated in FIG. 2 . FIG. 2depicts a flowchart of the steps of a haptic managing program 118executing within the haptic managing system 100 of FIG. 1 , inaccordance with one embodiment of the present invention. The hapticmanaging program 118 may simulate a mixed reality environment overlayingan activity surrounding (block 202). The activity surrounding mayinclude a machine shop floor, a retail store, a fabrication room, amanufacturing facility, or other locations where mixed reality may beused. Simulating the mixed reality environment may include trackinglocations of mixed reality interface devices, haptic devices, hapticanchor devices, or other real-world objects.

The haptic managing program 118 may also receive instruction to create ahaptic effect generation pattern within the mixed reality environment(block 204). The instruction may be received from the user 114. The user114 may interact with the haptic managing program 118 through inputdevices such as a keyboard, mouse, controller, etc. such that the user114 sends the instruction directly to the mixed reality simulator 102.The instruction may also be received automatically based on conditionssimulated within the mixed reality environment. For example, when ahaptic device 108 is added to the mixed reality environment, when aconnection with a haptic device 108 or haptic anchor device 110 changes,or when the mixed reality interface device 106 detects a condition, thenthe haptic managing program 118 may add an associated haptic effectgeneration pattern. The added haptic effect generation pattern may betied to a specific location such that when the user enters a specificlocation within the mixed reality environment, the haptic effect istriggered. The specific locations within the mixed reality environmentmay be associated with haptic anchor devices 110, or may be associatedwith a location that is recognized by the haptic managing program 118.For example, the haptic managing program 118 may recognize an object(e.g., face, machine, barcode, or QR code) that shows up within the viewof the camera of the mixed reality interface device 106.

As part of the mixed reality, the haptic managing program 118 maygenerate a graphical representation of the haptic effect generationpattern (block 206). The graphical representation is generated in themixed reality environment such that the user 114 may view the graphicalrepresentation through the mixed reality interface device 106. Thegraphical representation enables the user to quickly identify the hapticeffects that will result from triggering the haptic effect generationpattern.

The haptic managing program 118 may also receive a user alteration tothe haptic effect generation pattern (block 208). The user 114 altersthe haptic effect generation pattern based on a desired haptic effect.In certain embodiments, the user 114 may select a haptic effectgeneration pattern from within the mixed reality environment, and pullup an alteration menu that is visible on the mixed reality interfacedevice 106. The alteration menu may include options to change the size,shape, color, or other display characteristics for how the haptic effectgeneration pattern appears in the mixed reality environment. Thetriggering point of the haptic effect generation pattern may also bechanged. For example, the user 114 can define the haptic effectpropagation path, distance of propagation in the surrounding, locationof haptic effect generation, or other location-specific characteristics.

Based on the configuration of the user 114, the haptic managing program118 may also identify which haptic devices 108 can participate to createrequired haptic effect. That is, some haptic effects may be configuredto use multiple devices to initiate the haptic effect. Based on theresult of the simulated mixed reality environment, if the single hapticdevice 108 is not able to product required level of haptic then theproposed system will recommend installing one or more haptic effects anda damping generation module (the damping model simulates a mixed realitysimulation of the decrease in the amplitude of an oscillation as aresult of energy being drained from the system to overcome frictional orother resistive forces for said device).

Based on the user alteration, the haptic managing program 118 may changethe graphical representation (block 210). FIG. 3 depicts a schematicdiagram of a mixed reality environment 330 in which the haptic managingsystem 100 may operate to manage haptic effects, in accordance with oneembodiment of the present invention. The mixed reality environment 330may overlay the activity surrounding 116 as simulated by the hapticmanaging program 118, and may include real objects and digitallyoverlaid objects or interfaces. A user 314 may wear a mixed realityinterface device 306 to view and interface with the mixed realityenvironment 330, and may wear or carry a smartphone haptic device 308 aand a watch haptic device 308 b to receive haptic effects. As describedabove, the haptic devices 308 a, b may vibrate, change temperature,push, or electrically stimulate the user 314. Additionally, thesmartphone haptic device 308 a may combine with the watch haptic device308 b to provide further customization for haptic effect generationpatterns.

The smartphone haptic device 308 a and the watch haptic device 308 b maycommunicate wirelessly (e.g., through the communication network 112) tosend and receive signals with the haptic managing program 118. As thehaptic managing program 118 simulates the mixed reality environment 330,the user 314 may interact to send an instruction to create a hapticeffect generation pattern for a haptic anchor device 310 a at a fixedstructure 332. The haptic managing program 118 may then generate agraphical representation 334 a of the haptic effect generation patternwithin the mixed reality environment 330. The graphical representation334 a may include characteristics such as size, shape, color, intensity,saturation, opacity, and others to represent when the haptic effect willbe initiated (e.g., when the smartphone haptic device 308 a enters theboundary), and what the haptic effects will be (e.g., pulsed vibrationevery 1 second until deactivated by the user 314).

The haptic managing program 118 may also receive instructions to createa haptic effect generation pattern for a mobile haptic anchor device 310b attached to a mobile structure 336. The haptic managing program 118may then generate a graphical representation 334 b of the haptic effectgeneration pattern within the mixed reality environment 330. The hapticeffects for the mobile haptic anchor device 310 b may include a higherlevel of risk, such that the graphical representation 334 b is moreconspicuous, and the haptic effects are more arresting. For example, thehaptic effect generation pattern for the mobile haptic anchor device 310b may include instructions such that any haptic device 108, 308 thatenters the boundary causes all haptic devices 108, 308 to beginvibrating. For such broad-ranging notifications, the haptic managingprogram 118 may include an opt-in procedure. The opt-in procedure mayinclude a user validation requirement to ensure the profile of the user314 has approved the haptic effects. Such profiles may provide thehaptic managing program 118 with a corpus of knowledge and the tailoringof haptic effects to the user 314 such that when haptic effectgeneration patterns are created, the user's 314 own defaults areattached.

FIG. 4 depicts a block diagram of components of a computing device 400that represents any of the devices (e.g., the mixed reality simulator102, the network storage device 104, the mixed reality interface devices106, 306, the haptic devices 108, 308 a, b, and the haptic anchordevices 110, 310 a, b) in accordance with an illustrative embodiment ofthe present invention. It should be appreciated that FIG. 4 providesonly an illustration of one implementation and does not imply anylimitations with regard to the environments in which differentembodiments may be implemented. Many modifications to the depictedenvironment may be made.

Computing device 400 includes communications fabric 402, which providescommunications between computer processor(s) 404, memory 406, persistentstorage 408, communications unit 410, and input/output (I/O)interface(s) 412. Communications fabric 402 can be implemented with anyarchitecture designed for passing data and/or control informationbetween processors (such as microprocessors, communications and networkprocessors, etc.), system memory, peripheral devices, and any otherhardware components within a system. For example, communications fabric402 can be implemented with one or more buses.

Memory 406 and persistent storage 408 are computer-readable storagemedia. In this embodiment, memory 406 includes random access memory(RAM) 414 and cache memory 416. In general, memory 406 can include anysuitable volatile or non-volatile computer-readable storage media.

The haptic managing program 118 may be stored in persistent storage 408of computing device 400 for execution by one or more of the respectivecomputer processors 404 of computing device 400 via one or more memoriesof memory 406 of computing device 400. The proctoring program 120 andthe classification algorithm 122 are stored for execution and/or accessby one or more of the respective computer processors 404 via one or morememories of memory 406. In this embodiment, persistent storage 408includes a magnetic hard disk drive. Alternatively, or in addition to amagnetic hard disk drive, persistent storage 408 can include a solidstate hard drive, a semiconductor storage device, read-only memory(ROM), erasable programmable read-only memory (EPROM), flash memory, orany other computer-readable storage media that is capable of storingprogram instructions or digital information.

The media used by persistent storage 408 may also be removable. Forexample, a removable hard drive may be used for persistent storage 408.Other examples include optical and magnetic disks, thumb drives, andsmart cards that are inserted into a drive for transfer onto anothercomputer-readable storage medium that is also part of persistent storage408.

Communications unit 410, in these examples, provides for communicationswith other data processing systems or devices. In these examples,communications unit 410 includes one or more network interface cards.Communications unit 410 may provide communications through the use ofeither or both physical and wireless communications links. Theproctoring program 120 and the classification algorithm 122 may bedownloaded to persistent storage 408 of computing device 40 throughcommunications unit 410 of the computing device 400. The proctoringprogram 120 and the classification algorithm 122 may be downloaded topersistent storage 408 of the computing device 400 throughcommunications unit 410.

I/O interface(s) 412 allows for input and output of data with otherdevices that may be connected to the computing device 400. For example,I/O interface 412 may provide a connection to external devices 418 suchas a keyboard, keypad, a touch screen, and/or some other suitable inputdevice. External devices 418 can also include portable computer-readablestorage media such as, for example, thumb drives, portable optical ormagnetic disks, and memory cards. Software and data used to practiceembodiments of the present invention, e.g., haptic program 120, can bestored on such portable computer-readable storage media and can beloaded onto persistent storage 408 of the computing device 400 via I/Ointerface(s) 412 of the computing device 400. Software and data used topractice embodiments of the present invention, e.g., the proctoringprogram 120 and the classification algorithm 122, can be stored on suchportable computer-readable storage media and can be loaded ontopersistent storage via I/O interface(s) 412. I/O interface(s) 412 alsoconnect to a display 420.

Display 420 provides a mechanism to display data to a user and may be,for example, a computer monitor.

The programs described herein are identified based upon the applicationfor which they are implemented in a specific embodiment of theinvention. However, it should be appreciated that any particular programnomenclature herein is used merely for convenience, and thus theinvention should not be limited to use solely in any specificapplication identified and/or implied by such nomenclature.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof code, which comprises one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock may occur out of the order noted in the figures. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently, or the blocks may sometimes be executed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

The present invention may be a system, a method, and/or a computerprogram product at any possible technical detail level of integration.The computer program product may include a computer readable storagemedium (or media) having computer readable program instructions thereonfor causing a processor to carry out aspects of the present invention.The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire. Computer readable program instructions described hereincan be downloaded to respective computing/processing devices from acomputer readable storage medium or to an external computer or externalstorage device via a network, for example, the Internet, a local areanetwork, a wide area network and/or a wireless network. The network maycomprise copper transmission cables, optical transmission fibers,wireless transmission, routers, firewalls, switches, gateway computersand/or edge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device. Computer-readable programinstructions for carrying out operations of the present invention may beassembler instructions, instruction-set-architecture (ISA) instructions,machine instructions, machine dependent instructions, microcode,firmware instructions, state-setting data, configuration data forintegrated circuitry, or either source code or object code written inany combination of one or more programming languages, including anobject oriented programming language such as Smalltalk, C++, or thelike, and procedural programming languages, such as the “C” programminglanguage or similar programming languages. The computer readable programinstructions may execute entirely on the user's computer, partly on theuser's computer, as a stand-alone software package, partly on the user'scomputer and partly on a remote computer or entirely on the remotecomputer or server. In the latter scenario, the remote computer may beconnected to the user's computer through any type of network, includinga local area network (LAN) or a wide area network (WAN), or theconnection may be made to an external computer (for example, through theInternet using an Internet Service Provider). In some embodiments,electronic circuitry including, for example, programmable logiccircuitry, field-programmable gate arrays (FPGA), or programmable logicarrays (PLA) may execute the computer readable program instructions.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions. These computer readable programinstructions may be provided to a processor of a computer, or otherprogrammable data processing apparatus to produce a machine, such thatthe instructions, which execute via the processor of the computer orother programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks. The computer readable program instructions may also be loadedonto a computer, other programmable data processing apparatus, or otherdevice to cause a series of operational steps to be performed on thecomputer, other programmable apparatus or other device to produce acomputer implemented process, such that the instructions which executeon the computer, other programmable apparatus, or other device implementthe functions/acts specified in the flowchart and/or block diagram blockor blocks. The flowchart and block diagrams in the Figures illustratethe architecture, functionality, and operation of possibleimplementations of systems, methods, and computer program productsaccording to various embodiments of the present invention. In thisregard, each block in the flowchart or block diagrams may represent amodule, segment, or portion of instructions, which comprises one or moreexecutable instructions for implementing the specified logicalfunction(s). In some alternative implementations, the functions noted inthe blocks may occur out of the order noted in the Figures. For example,two blocks shown in succession may, in fact, be accomplished as onestep, executed concurrently, substantially concurrently, in a partiallyor wholly temporally overlapping manner, or the blocks may sometimes beexecuted in the reverse order, depending upon the functionalityinvolved. It will also be noted that each block of the block diagramsand/or flowchart illustration, and combinations of blocks in the blockdiagrams and/or flowchart illustration, can be implemented by specialpurpose hardware-based systems that perform the specified functions oracts or carry out combinations of special purpose hardware and computerinstructions.

What is claimed is:
 1. A computer-implemented method for managing hapticeffects, comprising: generating, by one or more processors, a firstgraphical representation of a first haptic effect generation pattern ina mixed reality environment, wherein the first haptic effect generationpattern comprises factors for generating a first haptic effect at afirst haptic device, and the first graphical representation comprises acharacteristic representing the first haptic effect; receiving, by oneor more processors, a user alteration to the first haptic effectgeneration pattern from a first user; changing, by one or moreprocessors, the characteristic of the graphical representation and thefirst haptic effect based on the user alteration; and sending the firsthaptic effect to the first haptic device worn by a second user notviewing the mixed reality environment.
 2. The method of claim 1, whereinthe factors of the first haptic effect generation pattern are selectedfrom the group consisting of: a duration of the haptic effect, a type ofhaptic feedback, a multi-device haptic feedback, a single-device hapticfeedback, a user ID, a life cycle of the first haptic effect, a distanceof propagation in the activity surrounding, and a location of hapticeffect generation.
 3. The method of claim 1, further comprisingidentifying additional haptic devices that can produce the first hapticeffect pattern.
 4. The method of claim 1, initiating the first hapticeffect at the first haptic device based on the first haptic effectgeneration pattern.
 5. The method of claim 4, further comprisinginitiating a second haptic effect at a second haptic device operating inthe mixed reality environment based on a similarity between the firsthaptic device and the second haptic device.
 6. The method of claim 1,further comprising simulating the mixed reality environment as anoverlay of an activity surrounding, wherein the activity surroundingcomprises a selection from the group consisting of: a machine shopfloor, a retail store, a fabrication room, and a manufacturing facility.7. The method of claim 1, further comprising: determining a location ofthe first haptic device; and automatically altering the first hapticeffect based on a proximity of the first haptic device to a mobilehaptic anchor device.
 8. The method of claim 1, wherein the useralteration comprises an action.
 9. The method of claim 1, furthercomprising generating a second graphical representation of the firsthaptic effect generation pattern that is different than the firstgraphical representation, wherein the first graphical representation isgenerated for a first user ID and the second graphical representation isgenerated for a second user ID.
 10. A computer program product formanaging haptic effects in a mixed reality environment, the computerprogram product comprising: one or more computer-readable storage mediaand program instructions collectively stored on the one or morecomputer-readable storage media, the program instructions comprising:program instructions to generate a first graphical representation of afirst haptic effect generation pattern in a mixed reality environment,wherein the first haptic effect generation pattern comprises factors forgenerating a first haptic effect at a first haptic device, and the firstgraphical representation comprises a characteristic representing thefirst haptic effect; program instructions to receive a user alterationto the first haptic effect generation pattern from a first user; programinstructions to change the characteristics of the graphicalrepresentation and the first haptic effect based on the user alteration;and program instruction to send the first haptic effect to the firsthaptic device worn by a second user not viewing the mixed realityenvironment.
 11. The computer program product of claim 10, wherein thefirst haptic effect generation pattern comprises factors selected fromthe group consisting of: a duration of haptic, a type of hapticfeedback, a multi-device haptic feedback, a single-device hapticfeedback, a user ID, a life cycle of the first haptic effect, a distanceof propagation in the activity surrounding, and a location of hapticeffect generation.
 12. The computer program product of claim 10, furthercomprising program instructions to initiate the first haptic effect atthe first haptic device based on the first haptic effect generationpattern.
 13. The computer program product of claim 12, furthercomprising program instructions to initiate a second haptic effect at asecond haptic device operating in the mixed reality environment based ona similarity between the first haptic device and the second hapticdevice.
 14. The computer program product of claim 10, furthercomprising: program instructions to determine a location of the firsthaptic device; and program instructions to automatically alter the firsthaptic effect based on a proximity of the first haptic device to amobile haptic anchor device.
 15. The computer program product of claim10, further comprising program instructions to generate a secondgraphical representation of the first haptic effect generation patternthat is different than the first graphical representation, wherein thefirst graphical representation is generated for a first user ID and thesecond graphical representation is generated for a second user ID.
 16. Acomputer system for managing haptic effects, the computer systemcomprising: one or more computer processors, one or morecomputer-readable storage media, and program instructions stored on thecomputer-readable storage media for execution by at least one of the oneor more computer processors, the program instructions comprising:program instructions to generate a first graphical representation of afirst haptic effect generation pattern in a mixed reality environment,wherein the first haptic effect generation pattern comprises factors forgenerating a first haptic effect at a haptic device, and the firstgraphical representation comprises a characteristic representing thefirst haptic effect; program instructions to receive a user alterationto the first haptic effect generation pattern from a first user; programinstructions to change the characteristics of the graphicalrepresentation and the first haptic effect based on the user alteration;and program instructions to send the first haptic effect to the firsthaptic device worn by a second user not viewing the mixed realityenvironment.
 17. The computer system of claim 10, further comprisingprogram instructions to initiate the first haptic effect at the firsthaptic device based on the first haptic effect generation pattern. 18.The computer system of claim 17, further comprising program instructionsto initiate a second haptic effect at a second haptic device operatingin the mixed reality environment based on a similarity between the firsthaptic device and the second haptic device.
 19. The computer system ofclaim 16, further comprising: program instructions to determine alocation of the first haptic device; and program instructions toautomatically alter the first haptic effect based on a proximity of thefirst haptic device to a mobile haptic anchor device.
 20. The computersystem of claim 16, further comprising program instructions to generatea second graphical representation of the first haptic effect generationpattern that is different than the first graphical representation,wherein the first graphical representation is generated for a first userID and the second graphical representation is generated for a seconduser ID.